Towards Higher-Level Supercompilation
نویسندگان
چکیده
We show that the power of supercompilation can be increased by constructing a hierarchy of supercompilers, in which a lowerlevel supercompiler is used by a higher-level one for proving improvement lemmas. The lemmas thus obtained are used to transform expressions labeling nodes in process trees, in order to avoid premature generalizations. Such kind of supercompilation, based on a combination of several metalevels, is called higher-level supercompilation (to differentiate it from higher-order supercompilation related to transforming higherorder functions). Higher-level supercompilation may be considered as an application of a more general principle of metasystem transition.
منابع مشابه
Multi-result Supercompilation as Branching Growth of the Penultimate Level in Metasystem Transitions
The paper deals with some aspects of metasystem transitions in the context of supercompilation. We consider the manifestations of the law of branching growth of the penultimate level in the case of higher-level supercompilation and argue that this law provides some useful hints regarding the ways of constructing metasystems by combining supercompilers. In particular we show the usefulness of mu...
متن کاملSupercompilation by Hypergraph Transformation Keldysh Institute of Applied Mathematics Russian Academy of Sciences
This paper presents a reformulation of the notion of multi-result supercompilation in terms of graph transformations. For this purpose we use a hypergraph-based representation of the program being transformed. The presented approach bridges the gap between supercompilation and equality saturation. We also show how higher-level supercompilation naturally arises in this setting. 3 Contents 1 Intr...
متن کاملTowards effective two-level supercompilation
Towards effective two-level supercompilation Moscow 2010 Ilya Klyuchnikov. Towards effective two-level supercompilation The paper presents a number of improvements to the method of two-level supercom-pilation: a fast technique of lemma discovering by analyzing the expressions in the partial process tree, an enhancement to the algorithm of checking improvement lemmas based on the normalization o...
متن کاملProving the Equivalence of Higher-Order Terms by Means of Supercompilation
One of the applications of supercompilation is proving properties of programs. We focus in this paper on a specific task: proving term equivalence for a higher-order lazy functional language. The “classical” way to prove equivalence of two terms t1 and t2 is to write an equality function equals and to simplify the term (equals t1 t2). However, this works only when certain conditions are met. Th...
متن کاملFormalizing and Implementing Multi-Result Supercompilation
The paper explains the principles of multi-result supercompilation. We introduce a formalism for representing supercompilation algorithms as rewriting rules for graphs of configurations. Some low-level technical details related to the implementation of multi-result supercompilation in MRSC are discussed. In particular, we consider the advantages of using spaghetti stacks for representing graphs...
متن کامل